概觀
使用 Rider 或 Visual Studio 偵錯 Unreal Engine 當機時,有時會只看到組合語言而非 C++ 原始碼。這是因為缺少 Debug Symbols,不過這是個很容易解決的問題。
環境
- 引擎版本:Unreal Engine 5.x
- 開發工具:JetBrains Rider 或 Microsoft Visual Studio(Windows)
主要內容
如果你的偵錯器只顯示像這樣的原始組合語言:
mov eax, dword ptr [rax+10h]
那就代表找不到符號檔(.pdb),這些檔案是用來對應原始碼和編譯後機器碼。
✅ 解決方法
- 開啟 Epic Games Launcher
- 進入 Library 分頁
- 找到你的 UE 版本
- 點擊 Launch 按鈕旁邊的 ▼ 小箭頭
- 選擇 Options
- 勾選 Editor symbols for debugging
- 點擊 Apply 開始下載(檔案可能很大,需花時間)
結果
- Rider 或 Visual Studio 現在可以正確顯示 C++ 原始碼與呼叫堆疊
- 可以追蹤錯誤回到你的程式碼
- 不再被一堆看不懂的組合語言困擾
💡 提示:每次安裝新的 Unreal Engine 時,Debug Symbols 預設是關閉的。
請記得重新開啟!